TPTP Problem File: ITP106^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP106^1 : TPTP v8.2.0. Released v7.5.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer Localization problem prob_1149__8998378_1
% Version  : Especial.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source   : [Des21]
% Names    : Localization/prob_1149__8998378_1 [Des21]

% Status   : Theorem
% Rating   : 0.30 v8.2.0, 0.31 v8.1.0, 0.36 v7.5.0
% Syntax   : Number of formulae    :  339 ( 106 unt;  56 typ;   0 def)
%            Number of atoms       :  801 ( 382 equ;   0 cnn)
%            Maximal formula atoms :   17 (   2 avg)
%            Number of connectives : 3859 (   8   ~;   1   |;  18   &;3401   @)
%                                         (   0 <=>; 431  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   16 (   6 avg)
%            Number of types       :   11 (  10 usr)
%            Number of type conns  :   69 (  69   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   47 (  46 usr;   8 con; 0-3 aty)
%            Number of variables   :  682 (  13   ^; 653   !;  16   ?; 682   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Sledgehammer 2021-02-23 15:40:36.834
%------------------------------------------------------------------------------
% Could-be-implicit typings (10)
thf(ty_n_t__Congruence__Opartial____object__Opartial____object____ext_It__Product____Type__Oprod_Itf__a_Mtf__a_J_Mt__Congruence__Oeq____object__Oeq____object____ext_It__Product____Type__Oprod_Itf__a_Mtf__a_J_Mt__Product____Type__Ounit_J_J,type,
    partia1993116613t_unit: $tType ).

thf(ty_n_t__Congruence__Opartial____object__Opartial____object____ext_Itf__a_Mt__Group__Omonoid__Omonoid____ext_Itf__a_Mt__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J_J_J,type,
    partia1833973666xt_a_b: $tType ).

thf(ty_n_t__Congruence__Opartial____object__Opartial____object____ext_Itf__a_Mt__Group__Omonoid__Omonoid____ext_Itf__a_Mt__Product____Type__Ounit_J_J,type,
    partia96731725t_unit: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
    set_Product_prod_a_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    product_prod_a_a: $tType ).

thf(ty_n_t__Set__Oset_Itf__a_J,type,
    set_a: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_t__Int__Oint,type,
    int: $tType ).

thf(ty_n_tf__b,type,
    b: $tType ).

thf(ty_n_tf__a,type,
    a: $tType ).

% Explicit typings (46)
thf(sy_c_Congruence_Opartial__object_Ocarrier_001t__Product____Type__Oprod_Itf__a_Mtf__a_J_001t__Congruence__Oeq____object__Oeq____object____ext_It__Product____Type__Oprod_Itf__a_Mtf__a_J_Mt__Product____Type__Ounit_J,type,
    partia206007992t_unit: partia1993116613t_unit > set_Product_prod_a_a ).

thf(sy_c_Congruence_Opartial__object_Ocarrier_001tf__a_001t__Group__Omonoid__Omonoid____ext_Itf__a_Mt__Product____Type__Ounit_J,type,
    partia1955795460t_unit: partia96731725t_unit > set_a ).

thf(sy_c_Congruence_Opartial__object_Ocarrier_001tf__a_001t__Group__Omonoid__Omonoid____ext_Itf__a_Mt__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J_J,type,
    partia1066395285xt_a_b: partia1833973666xt_a_b > set_a ).

thf(sy_c_Group_OUnits_001tf__a_001t__Product____Type__Ounit,type,
    units_a_Product_unit: partia96731725t_unit > set_a ).

thf(sy_c_Group_OUnits_001tf__a_001t__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J,type,
    units_a_ring_ext_a_b: partia1833973666xt_a_b > set_a ).

thf(sy_c_Group_Ocomm__group_001tf__a_001t__Product____Type__Ounit,type,
    comm_g1684316527t_unit: partia96731725t_unit > $o ).

thf(sy_c_Group_Ocomm__group_001tf__a_001t__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J,type,
    comm_g791708116xt_a_b: partia1833973666xt_a_b > $o ).

thf(sy_c_Group_Ogroup_001tf__a_001t__Product____Type__Ounit,type,
    group_a_Product_unit: partia96731725t_unit > $o ).

thf(sy_c_Group_Ogroup_001tf__a_001t__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J,type,
    group_a_ring_ext_a_b: partia1833973666xt_a_b > $o ).

thf(sy_c_Group_Omonoid_Omult_001tf__a_001t__Product____Type__Ounit,type,
    mult_a_Product_unit: partia96731725t_unit > a > a > a ).

thf(sy_c_Group_Omonoid_Omult_001tf__a_001t__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J,type,
    mult_a_ring_ext_a_b: partia1833973666xt_a_b > a > a > a ).

thf(sy_c_Group_Omonoid_Oone_001tf__a_001t__Product____Type__Ounit,type,
    one_a_Product_unit: partia96731725t_unit > a ).

thf(sy_c_Group_Omonoid_Oone_001tf__a_001t__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J,type,
    one_a_ring_ext_a_b: partia1833973666xt_a_b > a ).

thf(sy_c_Group_Ounits__of_001tf__a_001t__Product____Type__Ounit,type,
    units_873712258t_unit: partia96731725t_unit > partia96731725t_unit ).

thf(sy_c_Group_Ounits__of_001tf__a_001t__Ring__Oring__Oring____ext_Itf__a_Mtf__b_J,type,
    units_1411277569xt_a_b: partia1833973666xt_a_b > partia96731725t_unit ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Int__Oint,type,
    minus_minus_int: int > int > int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Int__Oint,type,
    plus_plus_int: int > int > int ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
    plus_plus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Int__Oint,type,
    uminus_uminus_int: int > int ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Int__Oint,type,
    semiri2019852685at_int: nat > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Nat__Onat,type,
    semiri1382578993at_nat: nat > nat ).

thf(sy_c_Product__Type_OPair_001tf__a_001tf__a,type,
    product_Pair_a_a: a > a > product_prod_a_a ).

thf(sy_c_Ring_Oa__inv_001tf__a_001tf__b,type,
    a_inv_a_b: partia1833973666xt_a_b > a > a ).

thf(sy_c_Ring_Oa__minus_001tf__a_001tf__b,type,
    a_minus_a_b: partia1833973666xt_a_b > a > a > a ).

thf(sy_c_Ring_Oabelian__group_001tf__a_001tf__b,type,
    abelian_group_a_b: partia1833973666xt_a_b > $o ).

thf(sy_c_Ring_Oadd__pow_001tf__a_001tf__b_001t__Int__Oint,type,
    add_pow_a_b_int: partia1833973666xt_a_b > int > a > a ).

thf(sy_c_Ring_Oadd__pow_001tf__a_001tf__b_001t__Nat__Onat,type,
    add_pow_a_b_nat: partia1833973666xt_a_b > nat > a > a ).

thf(sy_c_Ring_Ofield_001tf__a_001tf__b,type,
    field_a_b: partia1833973666xt_a_b > $o ).

thf(sy_c_Ring_Oring_Oadd_001tf__a_001tf__b,type,
    add_a_b: partia1833973666xt_a_b > a > a > a ).

thf(sy_c_Ring_Oring_Omore_001tf__a_001tf__b,type,
    more_a_b: partia1833973666xt_a_b > b ).

thf(sy_c_Ring_Oring_Ozero_001tf__a_001tf__b,type,
    zero_a_b: partia1833973666xt_a_b > a ).

thf(sy_c_Ring_Osemiring_001tf__a_001tf__b,type,
    semiring_a_b: partia1833973666xt_a_b > $o ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    collec645855634od_a_a: ( product_prod_a_a > $o ) > set_Product_prod_a_a ).

thf(sy_c_Set_OCollect_001tf__a,type,
    collect_a: ( a > $o ) > set_a ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    member449909584od_a_a: product_prod_a_a > set_Product_prod_a_a > $o ).

thf(sy_c_member_001tf__a,type,
    member_a: a > set_a > $o ).

thf(sy_v_R,type,
    r: partia1833973666xt_a_b ).

thf(sy_v_r,type,
    r2: a ).

thf(sy_v_r_H,type,
    r3: a ).

thf(sy_v_r_H_H,type,
    r4: a ).

thf(sy_v_rel,type,
    rel: partia1993116613t_unit ).

thf(sy_v_s,type,
    s: a ).

thf(sy_v_s_H,type,
    s2: a ).

thf(sy_v_s_H_H,type,
    s3: a ).

% Relevant facts (282)
thf(fact_0_right__add__eq,axiom,
    ! [A: a,B: a,C: a] :
      ( ( A = B )
     => ( ( add_a_b @ r @ C @ A )
        = ( add_a_b @ r @ C @ B ) ) ) ).

% right_add_eq
thf(fact_1_assms_I3_J,axiom,
    member449909584od_a_a @ ( product_Pair_a_a @ r4 @ s3 ) @ ( partia206007992t_unit @ rel ) ).

% assms(3)
thf(fact_2_assms_I2_J,axiom,
    member449909584od_a_a @ ( product_Pair_a_a @ r3 @ s2 ) @ ( partia206007992t_unit @ rel ) ).

% assms(2)
thf(fact_3_assms_I1_J,axiom,
    member449909584od_a_a @ ( product_Pair_a_a @ r2 @ s ) @ ( partia206007992t_unit @ rel ) ).

% assms(1)
thf(fact_4_closed__rel__add,axiom,
    ! [R: a,S: a,R2: a,S2: a] :
      ( ( member449909584od_a_a @ ( product_Pair_a_a @ R @ S ) @ ( partia206007992t_unit @ rel ) )
     => ( ( member449909584od_a_a @ ( product_Pair_a_a @ R2 @ S2 ) @ ( partia206007992t_unit @ rel ) )
       => ( member449909584od_a_a @ ( product_Pair_a_a @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ S2 @ R ) @ ( mult_a_ring_ext_a_b @ r @ S @ R2 ) ) @ ( mult_a_ring_ext_a_b @ r @ S @ S2 ) ) @ ( partia206007992t_unit @ rel ) ) ) ) ).

% closed_rel_add
thf(fact_5__092_060open_062s_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_J_A_061_As_A_092_060otimes_062_A_Is_H_H_A_092_060otimes_062_As_H_J_A_092_060otimes_062_As_H_H_092_060close_062,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ ( mult_a_ring_ext_a_b @ r @ s3 @ s2 ) ) @ s3 ) ) ).

% \<open>s \<otimes> s'' \<otimes> (s' \<otimes> s'') = s \<otimes> (s'' \<otimes> s') \<otimes> s''\<close>
thf(fact_6_f9,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ ( mult_a_ring_ext_a_b @ r @ s3 @ s3 ) ) ) ).

% f9
thf(fact_7__092_060open_062s_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Ir_H_A_092_060otimes_062_Ar_H_H_J_A_061_As_H_H_A_092_060otimes_062_As_A_092_060otimes_062_A_Ir_H_A_092_060otimes_062_Ar_H_H_J_092_060close_062,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s3 @ s ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) ).

% \<open>s \<otimes> s'' \<otimes> (r' \<otimes> r'') = s'' \<otimes> s \<otimes> (r' \<otimes> r'')\<close>
thf(fact_8__092_060open_062s_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_J_A_092_060otimes_062_A_Is_A_092_060otimes_062_Ar_H_A_092_060otimes_062_Ar_H_H_J_A_061_As_A_092_060otimes_062_As_H_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Ir_H_A_092_060otimes_062_Ar_H_H_J_J_092_060close_062,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) @ r4 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) ) ).

% \<open>s \<otimes> s'' \<otimes> (s' \<otimes> s'') \<otimes> (s \<otimes> r' \<otimes> r'') = s \<otimes> s' \<otimes> s'' \<otimes> (s \<otimes> s'' \<otimes> (r' \<otimes> r''))\<close>
thf(fact_9_f10,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ r4 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) ) ) ).

% f10
thf(fact_10_f5,axiom,
    member449909584od_a_a @ ( product_Pair_a_a @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( partia206007992t_unit @ rel ) ).

% f5
thf(fact_11_f4,axiom,
    member449909584od_a_a @ ( product_Pair_a_a @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) ) @ ( partia206007992t_unit @ rel ) ).

% f4
thf(fact_12__092_060open_062s_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_J_A_092_060otimes_062_A_I_Is_H_A_092_060otimes_062_Ar_A_092_060oplus_062_As_A_092_060otimes_062_Ar_H_J_A_092_060otimes_062_Ar_H_H_J_A_061_As_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_J_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_Ar_A_092_060otimes_062_Ar_H_H_A_092_060oplus_062_As_A_092_060otimes_062_Ar_H_A_092_060otimes_062_Ar_H_H_J_092_060close_062,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) ) @ r4 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ r4 ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) @ r4 ) ) ) ) ).

% \<open>s \<otimes> s'' \<otimes> (s' \<otimes> s'') \<otimes> ((s' \<otimes> r \<oplus> s \<otimes> r') \<otimes> r'') = s \<otimes> s'' \<otimes> (s' \<otimes> s'') \<otimes> (s' \<otimes> r \<otimes> r'' \<oplus> s \<otimes> r' \<otimes> r'')\<close>
thf(fact_13__092_060open_062s_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_J_A_092_060otimes_062_A_I_Is_H_A_092_060otimes_062_Ar_A_092_060oplus_062_As_A_092_060otimes_062_Ar_H_J_A_092_060otimes_062_Ar_H_H_J_A_061_As_A_092_060otimes_062_As_H_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Ir_A_092_060otimes_062_Ar_H_H_J_A_092_060oplus_062_As_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Ir_H_A_092_060otimes_062_Ar_H_H_J_J_092_060close_062,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) ) @ r4 ) )
    = ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) ) ) ).

% \<open>s \<otimes> s'' \<otimes> (s' \<otimes> s'') \<otimes> ((s' \<otimes> r \<oplus> s \<otimes> r') \<otimes> r'') = s \<otimes> s' \<otimes> s'' \<otimes> (s' \<otimes> s'' \<otimes> (r \<otimes> r'') \<oplus> s \<otimes> s'' \<otimes> (r' \<otimes> r''))\<close>
thf(fact_14_f7,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) ) @ r4 ) )
    = ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) @ r4 ) ) ) ) ).

% f7
thf(fact_15_f8,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) )
    = ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) ) ) ).

% f8
thf(fact_16_f12,axiom,
    member449909584od_a_a @ ( product_Pair_a_a @ ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) ) @ r4 ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) ) @ ( partia206007992t_unit @ rel ) ).

% f12
thf(fact_17_l__distr,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ X @ Y ) @ Z )
            = ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ X @ Z ) @ ( mult_a_ring_ext_a_b @ r @ Y @ Z ) ) ) ) ) ) ).

% l_distr
thf(fact_18_r__distr,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( mult_a_ring_ext_a_b @ r @ Z @ ( add_a_b @ r @ X @ Y ) )
            = ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ Z @ X ) @ ( mult_a_ring_ext_a_b @ r @ Z @ Y ) ) ) ) ) ) ).

% r_distr
thf(fact_19__092_060open_062s_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_J_A_092_060otimes_062_A_I_Is_H_A_092_060otimes_062_Ar_A_092_060oplus_062_As_A_092_060otimes_062_Ar_H_J_A_092_060otimes_062_Ar_H_H_J_A_092_060ominus_062_As_A_092_060otimes_062_As_H_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Is_H_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Ir_A_092_060otimes_062_Ar_H_H_J_A_092_060oplus_062_As_A_092_060otimes_062_As_H_H_A_092_060otimes_062_A_Ir_H_A_092_060otimes_062_Ar_H_H_J_J_A_061_A_092_060zero_062_092_060close_062,axiom,
    ( ( a_minus_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) ) @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) ) )
    = ( zero_a_b @ r ) ) ).

% \<open>s \<otimes> s'' \<otimes> (s' \<otimes> s'') \<otimes> ((s' \<otimes> r \<oplus> s \<otimes> r') \<otimes> r'') \<ominus> s \<otimes> s' \<otimes> s'' \<otimes> (s' \<otimes> s'' \<otimes> (r \<otimes> r'') \<oplus> s \<otimes> s'' \<otimes> (r' \<otimes> r'')) = \<zero>\<close>
thf(fact_20_prod_Oinject,axiom,
    ! [X1: a,X2: a,Y1: a,Y2: a] :
      ( ( ( product_Pair_a_a @ X1 @ X2 )
        = ( product_Pair_a_a @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_21_old_Oprod_Oinject,axiom,
    ! [A: a,B: a,A2: a,B2: a] :
      ( ( ( product_Pair_a_a @ A @ B )
        = ( product_Pair_a_a @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_22_local_Osemiring__axioms,axiom,
    semiring_a_b @ r ).

% local.semiring_axioms
thf(fact_23_m__assoc,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ X @ Y ) @ Z )
            = ( mult_a_ring_ext_a_b @ r @ X @ ( mult_a_ring_ext_a_b @ r @ Y @ Z ) ) ) ) ) ) ).

% m_assoc
thf(fact_24_m__comm,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ X @ Y )
          = ( mult_a_ring_ext_a_b @ r @ Y @ X ) ) ) ) ).

% m_comm
thf(fact_25_m__lcomm,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( mult_a_ring_ext_a_b @ r @ X @ ( mult_a_ring_ext_a_b @ r @ Y @ Z ) )
            = ( mult_a_ring_ext_a_b @ r @ Y @ ( mult_a_ring_ext_a_b @ r @ X @ Z ) ) ) ) ) ) ).

% m_lcomm
thf(fact_26_add_Om__assoc,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( add_a_b @ r @ ( add_a_b @ r @ X @ Y ) @ Z )
            = ( add_a_b @ r @ X @ ( add_a_b @ r @ Y @ Z ) ) ) ) ) ) ).

% add.m_assoc
thf(fact_27_add_Om__comm,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( add_a_b @ r @ X @ Y )
          = ( add_a_b @ r @ Y @ X ) ) ) ) ).

% add.m_comm
thf(fact_28_add_Om__lcomm,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( add_a_b @ r @ X @ ( add_a_b @ r @ Y @ Z ) )
            = ( add_a_b @ r @ Y @ ( add_a_b @ r @ X @ Z ) ) ) ) ) ) ).

% add.m_lcomm
thf(fact_29_local_Oright__minus__eq,axiom,
    ! [A: a,B: a,C: a] :
      ( ( A = B )
     => ( ( a_minus_a_b @ r @ C @ A )
        = ( a_minus_a_b @ r @ C @ B ) ) ) ).

% local.right_minus_eq
thf(fact_30_local_Ominus__unique,axiom,
    ! [Y: a,X: a,Y3: a] :
      ( ( ( add_a_b @ r @ Y @ X )
        = ( zero_a_b @ r ) )
     => ( ( ( add_a_b @ r @ X @ Y3 )
          = ( zero_a_b @ r ) )
       => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
         => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
           => ( ( member_a @ Y3 @ ( partia1066395285xt_a_b @ r ) )
             => ( Y = Y3 ) ) ) ) ) ) ).

% local.minus_unique
thf(fact_31_add_Or__inv__ex,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ? [X3: a] :
          ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
          & ( ( add_a_b @ r @ X @ X3 )
            = ( zero_a_b @ r ) ) ) ) ).

% add.r_inv_ex
thf(fact_32_add_Oone__unique,axiom,
    ! [U: a] :
      ( ( member_a @ U @ ( partia1066395285xt_a_b @ r ) )
     => ( ! [X3: a] :
            ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
           => ( ( add_a_b @ r @ U @ X3 )
              = X3 ) )
       => ( U
          = ( zero_a_b @ r ) ) ) ) ).

% add.one_unique
thf(fact_33_add_Ol__inv__ex,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ? [X3: a] :
          ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
          & ( ( add_a_b @ r @ X3 @ X )
            = ( zero_a_b @ r ) ) ) ) ).

% add.l_inv_ex
thf(fact_34_add_Oinv__comm,axiom,
    ! [X: a,Y: a] :
      ( ( ( add_a_b @ r @ X @ Y )
        = ( zero_a_b @ r ) )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( add_a_b @ r @ Y @ X )
            = ( zero_a_b @ r ) ) ) ) ) ).

% add.inv_comm
thf(fact_35_right__inv__add,axiom,
    ! [A: a,B: a,C: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ C @ ( partia1066395285xt_a_b @ r ) )
         => ( ( a_minus_a_b @ r @ ( a_minus_a_b @ r @ C @ A ) @ B )
            = ( a_minus_a_b @ r @ C @ ( add_a_b @ r @ A @ B ) ) ) ) ) ) ).

% right_inv_add
thf(fact_36_four__elem__comm,axiom,
    ! [A: a,B: a,C: a,D: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ C @ ( partia1066395285xt_a_b @ r ) )
         => ( ( member_a @ D @ ( partia1066395285xt_a_b @ r ) )
           => ( ( a_minus_a_b @ r @ ( add_a_b @ r @ ( a_minus_a_b @ r @ A @ C ) @ B ) @ D )
              = ( a_minus_a_b @ r @ ( a_minus_a_b @ r @ ( add_a_b @ r @ A @ B ) @ C ) @ D ) ) ) ) ) ) ).

% four_elem_comm
thf(fact_37_local_Oadd_Oright__cancel,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( ( add_a_b @ r @ Y @ X )
              = ( add_a_b @ r @ Z @ X ) )
            = ( Y = Z ) ) ) ) ) ).

% local.add.right_cancel
thf(fact_38_add_Om__closed,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( member_a @ ( add_a_b @ r @ X @ Y ) @ ( partia1066395285xt_a_b @ r ) ) ) ) ).

% add.m_closed
thf(fact_39_zero__closed,axiom,
    member_a @ ( zero_a_b @ r ) @ ( partia1066395285xt_a_b @ r ) ).

% zero_closed
thf(fact_40_semiring__simprules_I3_J,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( member_a @ ( mult_a_ring_ext_a_b @ r @ X @ Y ) @ ( partia1066395285xt_a_b @ r ) ) ) ) ).

% semiring_simprules(3)
thf(fact_41_minus__closed,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( member_a @ ( a_minus_a_b @ r @ X @ Y ) @ ( partia1066395285xt_a_b @ r ) ) ) ) ).

% minus_closed
thf(fact_42_r__zero,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_a_b @ r @ X @ ( zero_a_b @ r ) )
        = X ) ) ).

% r_zero
thf(fact_43_l__zero,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_a_b @ r @ ( zero_a_b @ r ) @ X )
        = X ) ) ).

% l_zero
thf(fact_44_add_Or__cancel__one_H,axiom,
    ! [X: a,A: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
       => ( ( X
            = ( add_a_b @ r @ A @ X ) )
          = ( A
            = ( zero_a_b @ r ) ) ) ) ) ).

% add.r_cancel_one'
thf(fact_45_mem__Collect__eq,axiom,
    ! [A: product_prod_a_a,P: product_prod_a_a > $o] :
      ( ( member449909584od_a_a @ A @ ( collec645855634od_a_a @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_46_mem__Collect__eq,axiom,
    ! [A: a,P: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_47_Collect__mem__eq,axiom,
    ! [A3: set_Product_prod_a_a] :
      ( ( collec645855634od_a_a
        @ ^ [X4: product_prod_a_a] : ( member449909584od_a_a @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_48_Collect__mem__eq,axiom,
    ! [A3: set_a] :
      ( ( collect_a
        @ ^ [X4: a] : ( member_a @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_49_Collect__cong,axiom,
    ! [P: a > $o,Q: a > $o] :
      ( ! [X3: a] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_a @ P )
        = ( collect_a @ Q ) ) ) ).

% Collect_cong
thf(fact_50_Collect__cong,axiom,
    ! [P: product_prod_a_a > $o,Q: product_prod_a_a > $o] :
      ( ! [X3: product_prod_a_a] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collec645855634od_a_a @ P )
        = ( collec645855634od_a_a @ Q ) ) ) ).

% Collect_cong
thf(fact_51_add_Or__cancel__one,axiom,
    ! [X: a,A: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
       => ( ( ( add_a_b @ r @ A @ X )
            = X )
          = ( A
            = ( zero_a_b @ r ) ) ) ) ) ).

% add.r_cancel_one
thf(fact_52_add_Ol__cancel__one_H,axiom,
    ! [X: a,A: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
       => ( ( X
            = ( add_a_b @ r @ X @ A ) )
          = ( A
            = ( zero_a_b @ r ) ) ) ) ) ).

% add.l_cancel_one'
thf(fact_53_add_Ol__cancel__one,axiom,
    ! [X: a,A: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
       => ( ( ( add_a_b @ r @ X @ A )
            = X )
          = ( A
            = ( zero_a_b @ r ) ) ) ) ) ).

% add.l_cancel_one
thf(fact_54_r__null,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( mult_a_ring_ext_a_b @ r @ X @ ( zero_a_b @ r ) )
        = ( zero_a_b @ r ) ) ) ).

% r_null
thf(fact_55_l__null,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( mult_a_ring_ext_a_b @ r @ ( zero_a_b @ r ) @ X )
        = ( zero_a_b @ r ) ) ) ).

% l_null
thf(fact_56_old_Oprod_Oinducts,axiom,
    ! [P: product_prod_a_a > $o,Prod: product_prod_a_a] :
      ( ! [A4: a,B3: a] : ( P @ ( product_Pair_a_a @ A4 @ B3 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_57_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_a_a] :
      ~ ! [A4: a,B3: a] :
          ( Y
         != ( product_Pair_a_a @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_58_Pair__inject,axiom,
    ! [A: a,B: a,A2: a,B2: a] :
      ( ( ( product_Pair_a_a @ A @ B )
        = ( product_Pair_a_a @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_59_prod__cases,axiom,
    ! [P: product_prod_a_a > $o,P2: product_prod_a_a] :
      ( ! [A4: a,B3: a] : ( P @ ( product_Pair_a_a @ A4 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_60_surj__pair,axiom,
    ! [P2: product_prod_a_a] :
    ? [X3: a,Y4: a] :
      ( P2
      = ( product_Pair_a_a @ X3 @ Y4 ) ) ).

% surj_pair
thf(fact_61_f11,axiom,
    ( ( mult_a_ring_ext_a_b @ r @ ( one_a_ring_ext_a_b @ r ) @ ( a_minus_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ r2 ) @ ( mult_a_ring_ext_a_b @ r @ s @ r3 ) ) @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s2 ) @ s3 ) @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) ) ) )
    = ( zero_a_b @ r ) ) ).

% f11
thf(fact_62_semiring_Osemiring__simprules_I11_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( add_a_b @ R3 @ X @ ( zero_a_b @ R3 ) )
          = X ) ) ) ).

% semiring.semiring_simprules(11)
thf(fact_63_semiring_Osemiring__simprules_I6_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( add_a_b @ R3 @ ( zero_a_b @ R3 ) @ X )
          = X ) ) ) ).

% semiring.semiring_simprules(6)
thf(fact_64_semiring_Ol__null,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( mult_a_ring_ext_a_b @ R3 @ ( zero_a_b @ R3 ) @ X )
          = ( zero_a_b @ R3 ) ) ) ) ).

% semiring.l_null
thf(fact_65_semiring_Or__null,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( mult_a_ring_ext_a_b @ R3 @ X @ ( zero_a_b @ R3 ) )
          = ( zero_a_b @ R3 ) ) ) ) ).

% semiring.r_null
thf(fact_66_semiring_Or__distr,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( mult_a_ring_ext_a_b @ R3 @ Z @ ( add_a_b @ R3 @ X @ Y ) )
              = ( add_a_b @ R3 @ ( mult_a_ring_ext_a_b @ R3 @ Z @ X ) @ ( mult_a_ring_ext_a_b @ R3 @ Z @ Y ) ) ) ) ) ) ) ).

% semiring.r_distr
thf(fact_67_semiring_Ol__distr,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( mult_a_ring_ext_a_b @ R3 @ ( add_a_b @ R3 @ X @ Y ) @ Z )
              = ( add_a_b @ R3 @ ( mult_a_ring_ext_a_b @ R3 @ X @ Z ) @ ( mult_a_ring_ext_a_b @ R3 @ Y @ Z ) ) ) ) ) ) ) ).

% semiring.l_distr
thf(fact_68_add__pow__rdistr__int,axiom,
    ! [A: a,B: a,K: int] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ A @ ( add_pow_a_b_int @ r @ K @ B ) )
          = ( add_pow_a_b_int @ r @ K @ ( mult_a_ring_ext_a_b @ r @ A @ B ) ) ) ) ) ).

% add_pow_rdistr_int
thf(fact_69_add__pow__ldistr__int,axiom,
    ! [A: a,B: a,K: int] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ ( add_pow_a_b_int @ r @ K @ A ) @ B )
          = ( add_pow_a_b_int @ r @ K @ ( mult_a_ring_ext_a_b @ r @ A @ B ) ) ) ) ) ).

% add_pow_ldistr_int
thf(fact_70_inv__unique,axiom,
    ! [Y: a,X: a,Y3: a] :
      ( ( ( mult_a_ring_ext_a_b @ r @ Y @ X )
        = ( one_a_ring_ext_a_b @ r ) )
     => ( ( ( mult_a_ring_ext_a_b @ r @ X @ Y3 )
          = ( one_a_ring_ext_a_b @ r ) )
       => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
         => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
           => ( ( member_a @ Y3 @ ( partia1066395285xt_a_b @ r ) )
             => ( Y = Y3 ) ) ) ) ) ) ).

% inv_unique
thf(fact_71_one__unique,axiom,
    ! [U: a] :
      ( ( member_a @ U @ ( partia1066395285xt_a_b @ r ) )
     => ( ! [X3: a] :
            ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
           => ( ( mult_a_ring_ext_a_b @ r @ U @ X3 )
              = X3 ) )
       => ( U
          = ( one_a_ring_ext_a_b @ r ) ) ) ) ).

% one_unique
thf(fact_72_add_Oint__pow__distrib,axiom,
    ! [X: a,Y: a,I: int] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( add_pow_a_b_int @ r @ I @ ( add_a_b @ r @ X @ Y ) )
          = ( add_a_b @ r @ ( add_pow_a_b_int @ r @ I @ X ) @ ( add_pow_a_b_int @ r @ I @ Y ) ) ) ) ) ).

% add.int_pow_distrib
thf(fact_73_add_Oint__pow__mult__distrib,axiom,
    ! [X: a,Y: a,I: int] :
      ( ( ( add_a_b @ r @ X @ Y )
        = ( add_a_b @ r @ Y @ X ) )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( add_pow_a_b_int @ r @ I @ ( add_a_b @ r @ X @ Y ) )
            = ( add_a_b @ r @ ( add_pow_a_b_int @ r @ I @ X ) @ ( add_pow_a_b_int @ r @ I @ Y ) ) ) ) ) ) ).

% add.int_pow_mult_distrib
thf(fact_74_semiring__simprules_I4_J,axiom,
    member_a @ ( one_a_ring_ext_a_b @ r ) @ ( partia1066395285xt_a_b @ r ) ).

% semiring_simprules(4)
thf(fact_75_add_Oint__pow__closed,axiom,
    ! [X: a,I: int] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( member_a @ ( add_pow_a_b_int @ r @ I @ X ) @ ( partia1066395285xt_a_b @ r ) ) ) ).

% add.int_pow_closed
thf(fact_76_add_Oint__pow__one,axiom,
    ! [Z: int] :
      ( ( add_pow_a_b_int @ r @ Z @ ( zero_a_b @ r ) )
      = ( zero_a_b @ r ) ) ).

% add.int_pow_one
thf(fact_77_l__one,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( mult_a_ring_ext_a_b @ r @ ( one_a_ring_ext_a_b @ r ) @ X )
        = X ) ) ).

% l_one
thf(fact_78_r__one,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( mult_a_ring_ext_a_b @ r @ X @ ( one_a_ring_ext_a_b @ r ) )
        = X ) ) ).

% r_one
thf(fact_79_semiring_Osemiring__simprules_I4_J,axiom,
    ! [R3: partia1833973666xt_a_b] :
      ( ( semiring_a_b @ R3 )
     => ( member_a @ ( one_a_ring_ext_a_b @ R3 ) @ ( partia1066395285xt_a_b @ R3 ) ) ) ).

% semiring.semiring_simprules(4)
thf(fact_80_semiring_Osemiring__simprules_I9_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( mult_a_ring_ext_a_b @ R3 @ ( one_a_ring_ext_a_b @ R3 ) @ X )
          = X ) ) ) ).

% semiring.semiring_simprules(9)
thf(fact_81_semiring_Osemiring__simprules_I3_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( member_a @ ( mult_a_ring_ext_a_b @ R3 @ X @ Y ) @ ( partia1066395285xt_a_b @ R3 ) ) ) ) ) ).

% semiring.semiring_simprules(3)
thf(fact_82_semiring_Osemiring__simprules_I8_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( mult_a_ring_ext_a_b @ R3 @ ( mult_a_ring_ext_a_b @ R3 @ X @ Y ) @ Z )
              = ( mult_a_ring_ext_a_b @ R3 @ X @ ( mult_a_ring_ext_a_b @ R3 @ Y @ Z ) ) ) ) ) ) ) ).

% semiring.semiring_simprules(8)
thf(fact_83_semiring_Osemiring__simprules_I1_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( member_a @ ( add_a_b @ R3 @ X @ Y ) @ ( partia1066395285xt_a_b @ R3 ) ) ) ) ) ).

% semiring.semiring_simprules(1)
thf(fact_84_semiring_Osemiring__simprules_I5_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( add_a_b @ R3 @ ( add_a_b @ R3 @ X @ Y ) @ Z )
              = ( add_a_b @ R3 @ X @ ( add_a_b @ R3 @ Y @ Z ) ) ) ) ) ) ) ).

% semiring.semiring_simprules(5)
thf(fact_85_semiring_Osemiring__simprules_I7_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( add_a_b @ R3 @ X @ Y )
            = ( add_a_b @ R3 @ Y @ X ) ) ) ) ) ).

% semiring.semiring_simprules(7)
thf(fact_86_semiring_Osemiring__simprules_I12_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( add_a_b @ R3 @ X @ ( add_a_b @ R3 @ Y @ Z ) )
              = ( add_a_b @ R3 @ Y @ ( add_a_b @ R3 @ X @ Z ) ) ) ) ) ) ) ).

% semiring.semiring_simprules(12)
thf(fact_87_semiring_Osemiring__simprules_I2_J,axiom,
    ! [R3: partia1833973666xt_a_b] :
      ( ( semiring_a_b @ R3 )
     => ( member_a @ ( zero_a_b @ R3 ) @ ( partia1066395285xt_a_b @ R3 ) ) ) ).

% semiring.semiring_simprules(2)
thf(fact_88_cring__fieldI2,axiom,
    ( ( ( zero_a_b @ r )
     != ( one_a_ring_ext_a_b @ r ) )
   => ( ! [A4: a] :
          ( ( member_a @ A4 @ ( partia1066395285xt_a_b @ r ) )
         => ( ( A4
             != ( zero_a_b @ r ) )
           => ? [X5: a] :
                ( ( member_a @ X5 @ ( partia1066395285xt_a_b @ r ) )
                & ( ( mult_a_ring_ext_a_b @ r @ A4 @ X5 )
                  = ( one_a_ring_ext_a_b @ r ) ) ) ) )
     => ( field_a_b @ r ) ) ) ).

% cring_fieldI2
thf(fact_89_add_Oint__pow__mult,axiom,
    ! [X: a,I: int,J: int] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_int @ r @ ( plus_plus_int @ I @ J ) @ X )
        = ( add_a_b @ r @ ( add_pow_a_b_int @ r @ I @ X ) @ ( add_pow_a_b_int @ r @ J @ X ) ) ) ) ).

% add.int_pow_mult
thf(fact_90_add__pow__ldistr,axiom,
    ! [A: a,B: a,K: nat] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ ( add_pow_a_b_nat @ r @ K @ A ) @ B )
          = ( add_pow_a_b_nat @ r @ K @ ( mult_a_ring_ext_a_b @ r @ A @ B ) ) ) ) ) ).

% add_pow_ldistr
thf(fact_91_add__pow__rdistr,axiom,
    ! [A: a,B: a,K: nat] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ A @ ( add_pow_a_b_nat @ r @ K @ B ) )
          = ( add_pow_a_b_nat @ r @ K @ ( mult_a_ring_ext_a_b @ r @ A @ B ) ) ) ) ) ).

% add_pow_rdistr
thf(fact_92_add_Ogroup__commutes__pow,axiom,
    ! [X: a,Y: a,N: nat] :
      ( ( ( add_a_b @ r @ X @ Y )
        = ( add_a_b @ r @ Y @ X ) )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) @ Y )
            = ( add_a_b @ r @ Y @ ( add_pow_a_b_nat @ r @ N @ X ) ) ) ) ) ) ).

% add.group_commutes_pow
thf(fact_93_add_Opow__mult__distrib,axiom,
    ! [X: a,Y: a,N: nat] :
      ( ( ( add_a_b @ r @ X @ Y )
        = ( add_a_b @ r @ Y @ X ) )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( add_pow_a_b_nat @ r @ N @ ( add_a_b @ r @ X @ Y ) )
            = ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) @ ( add_pow_a_b_nat @ r @ N @ Y ) ) ) ) ) ) ).

% add.pow_mult_distrib
thf(fact_94_add_Onat__pow__distrib,axiom,
    ! [X: a,Y: a,N: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( add_pow_a_b_nat @ r @ N @ ( add_a_b @ r @ X @ Y ) )
          = ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) @ ( add_pow_a_b_nat @ r @ N @ Y ) ) ) ) ) ).

% add.nat_pow_distrib
thf(fact_95_add_Onat__pow__comm,axiom,
    ! [X: a,N: nat,M: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) @ ( add_pow_a_b_nat @ r @ M @ X ) )
        = ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ M @ X ) @ ( add_pow_a_b_nat @ r @ N @ X ) ) ) ) ).

% add.nat_pow_comm
thf(fact_96_add_Onat__pow__closed,axiom,
    ! [X: a,N: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( member_a @ ( add_pow_a_b_nat @ r @ N @ X ) @ ( partia1066395285xt_a_b @ r ) ) ) ).

% add.nat_pow_closed
thf(fact_97_add_Onat__pow__one,axiom,
    ! [N: nat] :
      ( ( add_pow_a_b_nat @ r @ N @ ( zero_a_b @ r ) )
      = ( zero_a_b @ r ) ) ).

% add.nat_pow_one
thf(fact_98_one__not__zero,axiom,
    ! [R3: partia1833973666xt_a_b] :
      ( ( field_a_b @ R3 )
     => ( ( one_a_ring_ext_a_b @ R3 )
       != ( zero_a_b @ R3 ) ) ) ).

% one_not_zero
thf(fact_99_integral,axiom,
    ! [R3: partia1833973666xt_a_b,A: a,B: a] :
      ( ( field_a_b @ R3 )
     => ( ( ( mult_a_ring_ext_a_b @ R3 @ A @ B )
          = ( zero_a_b @ R3 ) )
       => ( ( member_a @ A @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ B @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( A
                = ( zero_a_b @ R3 ) )
              | ( B
                = ( zero_a_b @ R3 ) ) ) ) ) ) ) ).

% integral
thf(fact_100_semiring_Oadd__pow__ldistr,axiom,
    ! [R3: partia1833973666xt_a_b,A: a,B: a,K: nat] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ B @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( mult_a_ring_ext_a_b @ R3 @ ( add_pow_a_b_nat @ R3 @ K @ A ) @ B )
            = ( add_pow_a_b_nat @ R3 @ K @ ( mult_a_ring_ext_a_b @ R3 @ A @ B ) ) ) ) ) ) ).

% semiring.add_pow_ldistr
thf(fact_101_semiring_Oadd__pow__rdistr,axiom,
    ! [R3: partia1833973666xt_a_b,A: a,B: a,K: nat] :
      ( ( semiring_a_b @ R3 )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ B @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( mult_a_ring_ext_a_b @ R3 @ A @ ( add_pow_a_b_nat @ R3 @ K @ B ) )
            = ( add_pow_a_b_nat @ R3 @ K @ ( mult_a_ring_ext_a_b @ R3 @ A @ B ) ) ) ) ) ) ).

% semiring.add_pow_rdistr
thf(fact_102_add_Onat__pow__mult,axiom,
    ! [X: a,N: nat,M: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) @ ( add_pow_a_b_nat @ r @ M @ X ) )
        = ( add_pow_a_b_nat @ r @ ( plus_plus_nat @ N @ M ) @ X ) ) ) ).

% add.nat_pow_mult
thf(fact_103_add_Onat__pow__Suc2,axiom,
    ! [X: a,N: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_nat @ r @ ( suc @ N ) @ X )
        = ( add_a_b @ r @ X @ ( add_pow_a_b_nat @ r @ N @ X ) ) ) ) ).

% add.nat_pow_Suc2
thf(fact_104_add_Opow__eq__div2,axiom,
    ! [X: a,M: nat,N: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( ( add_pow_a_b_nat @ r @ M @ X )
          = ( add_pow_a_b_nat @ r @ N @ X ) )
       => ( ( add_pow_a_b_nat @ r @ ( minus_minus_nat @ M @ N ) @ X )
          = ( zero_a_b @ r ) ) ) ) ).

% add.pow_eq_div2
thf(fact_105_minus__to__eq,axiom,
    ! [X: a,Y: a] :
      ( ( abelian_group_a_b @ r )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( ( a_minus_a_b @ r @ X @ Y )
              = ( zero_a_b @ r ) )
           => ( X = Y ) ) ) ) ) ).

% minus_to_eq
thf(fact_106_ring_Oequality,axiom,
    ! [R: partia1833973666xt_a_b,R2: partia1833973666xt_a_b] :
      ( ( ( partia1066395285xt_a_b @ R )
        = ( partia1066395285xt_a_b @ R2 ) )
     => ( ( ( mult_a_ring_ext_a_b @ R )
          = ( mult_a_ring_ext_a_b @ R2 ) )
       => ( ( ( one_a_ring_ext_a_b @ R )
            = ( one_a_ring_ext_a_b @ R2 ) )
         => ( ( ( zero_a_b @ R )
              = ( zero_a_b @ R2 ) )
           => ( ( ( add_a_b @ R )
                = ( add_a_b @ R2 ) )
             => ( ( ( more_a_b @ R )
                  = ( more_a_b @ R2 ) )
               => ( R = R2 ) ) ) ) ) ) ) ).

% ring.equality
thf(fact_107_is__abelian__group,axiom,
    abelian_group_a_b @ r ).

% is_abelian_group
thf(fact_108_add_Onat__pow__Suc,axiom,
    ! [N: nat,X: a] :
      ( ( add_pow_a_b_nat @ r @ ( suc @ N ) @ X )
      = ( add_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) @ X ) ) ).

% add.nat_pow_Suc
thf(fact_109_abelian__groupE_I1_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( member_a @ ( add_a_b @ R3 @ X @ Y ) @ ( partia1066395285xt_a_b @ R3 ) ) ) ) ) ).

% abelian_groupE(1)
thf(fact_110_abelian__groupE_I3_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( abelian_group_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ R3 ) )
           => ( ( add_a_b @ R3 @ ( add_a_b @ R3 @ X @ Y ) @ Z )
              = ( add_a_b @ R3 @ X @ ( add_a_b @ R3 @ Y @ Z ) ) ) ) ) ) ) ).

% abelian_groupE(3)
thf(fact_111_abelian__groupE_I4_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ R3 ) )
         => ( ( add_a_b @ R3 @ X @ Y )
            = ( add_a_b @ R3 @ Y @ X ) ) ) ) ) ).

% abelian_groupE(4)
thf(fact_112_abelian__groupE_I2_J,axiom,
    ! [R3: partia1833973666xt_a_b] :
      ( ( abelian_group_a_b @ R3 )
     => ( member_a @ ( zero_a_b @ R3 ) @ ( partia1066395285xt_a_b @ R3 ) ) ) ).

% abelian_groupE(2)
thf(fact_113_abelian__group_Ominus__closed,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( member_a @ ( a_minus_a_b @ G @ X @ Y ) @ ( partia1066395285xt_a_b @ G ) ) ) ) ) ).

% abelian_group.minus_closed
thf(fact_114_abelian__groupI,axiom,
    ! [R3: partia1833973666xt_a_b] :
      ( ! [X3: a] :
          ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ R3 ) )
         => ! [Y4: a] :
              ( ( member_a @ Y4 @ ( partia1066395285xt_a_b @ R3 ) )
             => ( member_a @ ( add_a_b @ R3 @ X3 @ Y4 ) @ ( partia1066395285xt_a_b @ R3 ) ) ) )
     => ( ( member_a @ ( zero_a_b @ R3 ) @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ! [X3: a] :
              ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ R3 ) )
             => ! [Y4: a] :
                  ( ( member_a @ Y4 @ ( partia1066395285xt_a_b @ R3 ) )
                 => ! [Z2: a] :
                      ( ( member_a @ Z2 @ ( partia1066395285xt_a_b @ R3 ) )
                     => ( ( add_a_b @ R3 @ ( add_a_b @ R3 @ X3 @ Y4 ) @ Z2 )
                        = ( add_a_b @ R3 @ X3 @ ( add_a_b @ R3 @ Y4 @ Z2 ) ) ) ) ) )
         => ( ! [X3: a] :
                ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ R3 ) )
               => ! [Y4: a] :
                    ( ( member_a @ Y4 @ ( partia1066395285xt_a_b @ R3 ) )
                   => ( ( add_a_b @ R3 @ X3 @ Y4 )
                      = ( add_a_b @ R3 @ Y4 @ X3 ) ) ) )
           => ( ! [X3: a] :
                  ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ R3 ) )
                 => ( ( add_a_b @ R3 @ ( zero_a_b @ R3 ) @ X3 )
                    = X3 ) )
             => ( ! [X3: a] :
                    ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ R3 ) )
                   => ? [Xa: a] :
                        ( ( member_a @ Xa @ ( partia1066395285xt_a_b @ R3 ) )
                        & ( ( add_a_b @ R3 @ Xa @ X3 )
                          = ( zero_a_b @ R3 ) ) ) )
               => ( abelian_group_a_b @ R3 ) ) ) ) ) ) ) ).

% abelian_groupI
thf(fact_115_abelian__groupE_I5_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( abelian_group_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ( ( add_a_b @ R3 @ ( zero_a_b @ R3 ) @ X )
          = X ) ) ) ).

% abelian_groupE(5)
thf(fact_116_abelian__groupE_I6_J,axiom,
    ! [R3: partia1833973666xt_a_b,X: a] :
      ( ( abelian_group_a_b @ R3 )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ R3 ) )
       => ? [X3: a] :
            ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ R3 ) )
            & ( ( add_a_b @ R3 @ X3 @ X )
              = ( zero_a_b @ R3 ) ) ) ) ) ).

% abelian_groupE(6)
thf(fact_117_abelian__group_Ofour__elem__comm,axiom,
    ! [G: partia1833973666xt_a_b,A: a,B: a,C: a,D: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ B @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ C @ ( partia1066395285xt_a_b @ G ) )
           => ( ( member_a @ D @ ( partia1066395285xt_a_b @ G ) )
             => ( ( a_minus_a_b @ G @ ( add_a_b @ G @ ( a_minus_a_b @ G @ A @ C ) @ B ) @ D )
                = ( a_minus_a_b @ G @ ( a_minus_a_b @ G @ ( add_a_b @ G @ A @ B ) @ C ) @ D ) ) ) ) ) ) ) ).

% abelian_group.four_elem_comm
thf(fact_118_abelian__group_Oright__inv__add,axiom,
    ! [G: partia1833973666xt_a_b,A: a,B: a,C: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ B @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ C @ ( partia1066395285xt_a_b @ G ) )
           => ( ( a_minus_a_b @ G @ ( a_minus_a_b @ G @ C @ A ) @ B )
              = ( a_minus_a_b @ G @ C @ ( add_a_b @ G @ A @ B ) ) ) ) ) ) ) ).

% abelian_group.right_inv_add
thf(fact_119_abelian__group_Ominus__to__eq,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( abelian_group_a_b @ G )
       => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
           => ( ( ( a_minus_a_b @ G @ X @ Y )
                = ( zero_a_b @ G ) )
             => ( X = Y ) ) ) ) ) ) ).

% abelian_group.minus_to_eq
thf(fact_120_diff__diff__left,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_121_Suc__diff__diff,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_122_diff__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_Suc_Suc
thf(fact_123_add__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ M @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc_right
thf(fact_124_nat_Oinject,axiom,
    ! [X2: nat,Y2: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% nat.inject
thf(fact_125_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_126_Suc__inject,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( suc @ X )
        = ( suc @ Y ) )
     => ( X = Y ) ) ).

% Suc_inject
thf(fact_127_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_128_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_129_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_130_nat__arith_Osuc1,axiom,
    ! [A3: nat,K: nat,A: nat] :
      ( ( A3
        = ( plus_plus_nat @ K @ A ) )
     => ( ( suc @ A3 )
        = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).

% nat_arith.suc1
thf(fact_131_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_132_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_133_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_134_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_135_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_136_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_137_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_138_add__diff__cancel__right_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_139_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_140_add__diff__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_141_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_142_add__diff__cancel__left_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_143_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_144_add__diff__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_145_add__right__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_146_add__right__cancel,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_147_add__left__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_148_add__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_149_add__diff__cancel,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_150_diff__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_151_add__right__imp__eq,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_152_add__right__imp__eq,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_153_add__left__imp__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_154_add__left__imp__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_155_add_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ B @ ( plus_plus_int @ A @ C ) )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.left_commute
thf(fact_156_add_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_157_add_Ocommute,axiom,
    ( plus_plus_int
    = ( ^ [A5: int,B4: int] : ( plus_plus_int @ B4 @ A5 ) ) ) ).

% add.commute
thf(fact_158_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A5: nat,B4: nat] : ( plus_plus_nat @ B4 @ A5 ) ) ) ).

% add.commute
thf(fact_159_group__add__class_Oadd_Oright__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% group_add_class.add.right_cancel
thf(fact_160_add_Oleft__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_161_add_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.assoc
thf(fact_162_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_163_group__cancel_Oadd2,axiom,
    ! [B5: int,K: int,B: int,A: int] :
      ( ( B5
        = ( plus_plus_int @ K @ B ) )
     => ( ( plus_plus_int @ A @ B5 )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_164_group__cancel_Oadd2,axiom,
    ! [B5: nat,K: nat,B: nat,A: nat] :
      ( ( B5
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B5 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_165_group__cancel_Oadd1,axiom,
    ! [A3: int,K: int,A: int,B: int] :
      ( ( A3
        = ( plus_plus_int @ K @ A ) )
     => ( ( plus_plus_int @ A3 @ B )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_166_group__cancel_Oadd1,axiom,
    ! [A3: nat,K: nat,A: nat,B: nat] :
      ( ( A3
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A3 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_167_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_int @ I @ K )
        = ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_168_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_169_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_170_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_171_diff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_172_diff__right__commute,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B )
      = ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_173_diff__eq__diff__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_174_group__cancel_Osub1,axiom,
    ! [A3: int,K: int,A: int,B: int] :
      ( ( A3
        = ( plus_plus_int @ K @ A ) )
     => ( ( minus_minus_int @ A3 @ B )
        = ( plus_plus_int @ K @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_175_diff__eq__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( minus_minus_int @ A @ B )
        = C )
      = ( A
        = ( plus_plus_int @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_176_eq__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( A
        = ( minus_minus_int @ C @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_177_add__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_178_diff__diff__eq2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_179_diff__add__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_180_diff__add__eq__diff__diff__swap,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_181_diff__diff__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_add
thf(fact_182_diff__diff__add,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% diff_diff_add
thf(fact_183_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_184_add__implies__diff,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ( plus_plus_int @ C @ B )
        = A )
     => ( C
        = ( minus_minus_int @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_185_Units__l__inv__ex,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( units_a_ring_ext_a_b @ r ) )
     => ? [X3: a] :
          ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
          & ( ( mult_a_ring_ext_a_b @ r @ X3 @ X )
            = ( one_a_ring_ext_a_b @ r ) ) ) ) ).

% Units_l_inv_ex
thf(fact_186_Units__r__inv__ex,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( units_a_ring_ext_a_b @ r ) )
     => ? [X3: a] :
          ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
          & ( ( mult_a_ring_ext_a_b @ r @ X @ X3 )
            = ( one_a_ring_ext_a_b @ r ) ) ) ) ).

% Units_r_inv_ex
thf(fact_187_group__l__invI,axiom,
    ( ! [X3: a] :
        ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ r ) )
       => ? [Xa: a] :
            ( ( member_a @ Xa @ ( partia1066395285xt_a_b @ r ) )
            & ( ( mult_a_ring_ext_a_b @ r @ Xa @ X3 )
              = ( one_a_ring_ext_a_b @ r ) ) ) )
   => ( group_a_ring_ext_a_b @ r ) ) ).

% group_l_invI
thf(fact_188_Units__closed,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( units_a_ring_ext_a_b @ r ) )
     => ( member_a @ X @ ( partia1066395285xt_a_b @ r ) ) ) ).

% Units_closed
thf(fact_189_Units__inv__comm,axiom,
    ! [X: a,Y: a] :
      ( ( ( mult_a_ring_ext_a_b @ r @ X @ Y )
        = ( one_a_ring_ext_a_b @ r ) )
     => ( ( member_a @ X @ ( units_a_ring_ext_a_b @ r ) )
       => ( ( member_a @ Y @ ( units_a_ring_ext_a_b @ r ) )
         => ( ( mult_a_ring_ext_a_b @ r @ Y @ X )
            = ( one_a_ring_ext_a_b @ r ) ) ) ) ) ).

% Units_inv_comm
thf(fact_190_Units__m__closed,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( units_a_ring_ext_a_b @ r ) )
     => ( ( member_a @ Y @ ( units_a_ring_ext_a_b @ r ) )
       => ( member_a @ ( mult_a_ring_ext_a_b @ r @ X @ Y ) @ ( units_a_ring_ext_a_b @ r ) ) ) ) ).

% Units_m_closed
thf(fact_191_Units__one__closed,axiom,
    member_a @ ( one_a_ring_ext_a_b @ r ) @ ( units_a_ring_ext_a_b @ r ) ).

% Units_one_closed
thf(fact_192_Units__l__cancel,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( member_a @ X @ ( units_a_ring_ext_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
         => ( ( ( mult_a_ring_ext_a_b @ r @ X @ Y )
              = ( mult_a_ring_ext_a_b @ r @ X @ Z ) )
            = ( Y = Z ) ) ) ) ) ).

% Units_l_cancel
thf(fact_193_groupI,axiom,
    ! [G: partia96731725t_unit] :
      ( ! [X3: a] :
          ( ( member_a @ X3 @ ( partia1955795460t_unit @ G ) )
         => ! [Y4: a] :
              ( ( member_a @ Y4 @ ( partia1955795460t_unit @ G ) )
             => ( member_a @ ( mult_a_Product_unit @ G @ X3 @ Y4 ) @ ( partia1955795460t_unit @ G ) ) ) )
     => ( ( member_a @ ( one_a_Product_unit @ G ) @ ( partia1955795460t_unit @ G ) )
       => ( ! [X3: a] :
              ( ( member_a @ X3 @ ( partia1955795460t_unit @ G ) )
             => ! [Y4: a] :
                  ( ( member_a @ Y4 @ ( partia1955795460t_unit @ G ) )
                 => ! [Z2: a] :
                      ( ( member_a @ Z2 @ ( partia1955795460t_unit @ G ) )
                     => ( ( mult_a_Product_unit @ G @ ( mult_a_Product_unit @ G @ X3 @ Y4 ) @ Z2 )
                        = ( mult_a_Product_unit @ G @ X3 @ ( mult_a_Product_unit @ G @ Y4 @ Z2 ) ) ) ) ) )
         => ( ! [X3: a] :
                ( ( member_a @ X3 @ ( partia1955795460t_unit @ G ) )
               => ( ( mult_a_Product_unit @ G @ ( one_a_Product_unit @ G ) @ X3 )
                  = X3 ) )
           => ( ! [X3: a] :
                  ( ( member_a @ X3 @ ( partia1955795460t_unit @ G ) )
                 => ? [Xa: a] :
                      ( ( member_a @ Xa @ ( partia1955795460t_unit @ G ) )
                      & ( ( mult_a_Product_unit @ G @ Xa @ X3 )
                        = ( one_a_Product_unit @ G ) ) ) )
             => ( group_a_Product_unit @ G ) ) ) ) ) ) ).

% groupI
thf(fact_194_groupI,axiom,
    ! [G: partia1833973666xt_a_b] :
      ( ! [X3: a] :
          ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ G ) )
         => ! [Y4: a] :
              ( ( member_a @ Y4 @ ( partia1066395285xt_a_b @ G ) )
             => ( member_a @ ( mult_a_ring_ext_a_b @ G @ X3 @ Y4 ) @ ( partia1066395285xt_a_b @ G ) ) ) )
     => ( ( member_a @ ( one_a_ring_ext_a_b @ G ) @ ( partia1066395285xt_a_b @ G ) )
       => ( ! [X3: a] :
              ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ G ) )
             => ! [Y4: a] :
                  ( ( member_a @ Y4 @ ( partia1066395285xt_a_b @ G ) )
                 => ! [Z2: a] :
                      ( ( member_a @ Z2 @ ( partia1066395285xt_a_b @ G ) )
                     => ( ( mult_a_ring_ext_a_b @ G @ ( mult_a_ring_ext_a_b @ G @ X3 @ Y4 ) @ Z2 )
                        = ( mult_a_ring_ext_a_b @ G @ X3 @ ( mult_a_ring_ext_a_b @ G @ Y4 @ Z2 ) ) ) ) ) )
         => ( ! [X3: a] :
                ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ G ) )
               => ( ( mult_a_ring_ext_a_b @ G @ ( one_a_ring_ext_a_b @ G ) @ X3 )
                  = X3 ) )
           => ( ! [X3: a] :
                  ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ G ) )
                 => ? [Xa: a] :
                      ( ( member_a @ Xa @ ( partia1066395285xt_a_b @ G ) )
                      & ( ( mult_a_ring_ext_a_b @ G @ Xa @ X3 )
                        = ( one_a_ring_ext_a_b @ G ) ) ) )
             => ( group_a_ring_ext_a_b @ G ) ) ) ) ) ) ).

% groupI
thf(fact_195_group_Oinv__comm,axiom,
    ! [G: partia96731725t_unit,X: a,Y: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( ( mult_a_Product_unit @ G @ X @ Y )
          = ( one_a_Product_unit @ G ) )
       => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
         => ( ( member_a @ Y @ ( partia1955795460t_unit @ G ) )
           => ( ( mult_a_Product_unit @ G @ Y @ X )
              = ( one_a_Product_unit @ G ) ) ) ) ) ) ).

% group.inv_comm
thf(fact_196_group_Oinv__comm,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( ( mult_a_ring_ext_a_b @ G @ X @ Y )
          = ( one_a_ring_ext_a_b @ G ) )
       => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
           => ( ( mult_a_ring_ext_a_b @ G @ Y @ X )
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ) ).

% group.inv_comm
thf(fact_197_group_Ol__inv__ex,axiom,
    ! [G: partia96731725t_unit,X: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ? [X3: a] :
            ( ( member_a @ X3 @ ( partia1955795460t_unit @ G ) )
            & ( ( mult_a_Product_unit @ G @ X3 @ X )
              = ( one_a_Product_unit @ G ) ) ) ) ) ).

% group.l_inv_ex
thf(fact_198_group_Ol__inv__ex,axiom,
    ! [G: partia1833973666xt_a_b,X: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ? [X3: a] :
            ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ G ) )
            & ( ( mult_a_ring_ext_a_b @ G @ X3 @ X )
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ).

% group.l_inv_ex
thf(fact_199_Group_Ogroup_Oright__cancel,axiom,
    ! [G: partia96731725t_unit,X: a,Y: a,Z: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ Y @ ( partia1955795460t_unit @ G ) )
         => ( ( member_a @ Z @ ( partia1955795460t_unit @ G ) )
           => ( ( ( mult_a_Product_unit @ G @ Y @ X )
                = ( mult_a_Product_unit @ G @ Z @ X ) )
              = ( Y = Z ) ) ) ) ) ) ).

% Group.group.right_cancel
thf(fact_200_Group_Ogroup_Oright__cancel,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ G ) )
           => ( ( ( mult_a_ring_ext_a_b @ G @ Y @ X )
                = ( mult_a_ring_ext_a_b @ G @ Z @ X ) )
              = ( Y = Z ) ) ) ) ) ) ).

% Group.group.right_cancel
thf(fact_201_group_OUnits__eq,axiom,
    ! [G: partia96731725t_unit] :
      ( ( group_a_Product_unit @ G )
     => ( ( units_a_Product_unit @ G )
        = ( partia1955795460t_unit @ G ) ) ) ).

% group.Units_eq
thf(fact_202_group_OUnits__eq,axiom,
    ! [G: partia1833973666xt_a_b] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( units_a_ring_ext_a_b @ G )
        = ( partia1066395285xt_a_b @ G ) ) ) ).

% group.Units_eq
thf(fact_203_group_Or__cancel__one_H,axiom,
    ! [G: partia96731725t_unit,X: a,A: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ A @ ( partia1955795460t_unit @ G ) )
         => ( ( X
              = ( mult_a_Product_unit @ G @ A @ X ) )
            = ( A
              = ( one_a_Product_unit @ G ) ) ) ) ) ) ).

% group.r_cancel_one'
thf(fact_204_group_Or__cancel__one_H,axiom,
    ! [G: partia1833973666xt_a_b,X: a,A: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
         => ( ( X
              = ( mult_a_ring_ext_a_b @ G @ A @ X ) )
            = ( A
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ) ).

% group.r_cancel_one'
thf(fact_205_group_Ol__cancel__one_H,axiom,
    ! [G: partia96731725t_unit,X: a,A: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ A @ ( partia1955795460t_unit @ G ) )
         => ( ( X
              = ( mult_a_Product_unit @ G @ X @ A ) )
            = ( A
              = ( one_a_Product_unit @ G ) ) ) ) ) ) ).

% group.l_cancel_one'
thf(fact_206_group_Ol__cancel__one_H,axiom,
    ! [G: partia1833973666xt_a_b,X: a,A: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
         => ( ( X
              = ( mult_a_ring_ext_a_b @ G @ X @ A ) )
            = ( A
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ) ).

% group.l_cancel_one'
thf(fact_207_group_Or__cancel__one,axiom,
    ! [G: partia96731725t_unit,X: a,A: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ A @ ( partia1955795460t_unit @ G ) )
         => ( ( ( mult_a_Product_unit @ G @ A @ X )
              = X )
            = ( A
              = ( one_a_Product_unit @ G ) ) ) ) ) ) ).

% group.r_cancel_one
thf(fact_208_group_Or__cancel__one,axiom,
    ! [G: partia1833973666xt_a_b,X: a,A: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
         => ( ( ( mult_a_ring_ext_a_b @ G @ A @ X )
              = X )
            = ( A
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ) ).

% group.r_cancel_one
thf(fact_209_group_Ol__cancel__one,axiom,
    ! [G: partia96731725t_unit,X: a,A: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ A @ ( partia1955795460t_unit @ G ) )
         => ( ( ( mult_a_Product_unit @ G @ X @ A )
              = X )
            = ( A
              = ( one_a_Product_unit @ G ) ) ) ) ) ) ).

% group.l_cancel_one
thf(fact_210_group_Ol__cancel__one,axiom,
    ! [G: partia1833973666xt_a_b,X: a,A: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
         => ( ( ( mult_a_ring_ext_a_b @ G @ X @ A )
              = X )
            = ( A
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ) ).

% group.l_cancel_one
thf(fact_211_group_Or__inv__ex,axiom,
    ! [G: partia96731725t_unit,X: a] :
      ( ( group_a_Product_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ? [X3: a] :
            ( ( member_a @ X3 @ ( partia1955795460t_unit @ G ) )
            & ( ( mult_a_Product_unit @ G @ X @ X3 )
              = ( one_a_Product_unit @ G ) ) ) ) ) ).

% group.r_inv_ex
thf(fact_212_group_Or__inv__ex,axiom,
    ! [G: partia1833973666xt_a_b,X: a] :
      ( ( group_a_ring_ext_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ? [X3: a] :
            ( ( member_a @ X3 @ ( partia1066395285xt_a_b @ G ) )
            & ( ( mult_a_ring_ext_a_b @ G @ X @ X3 )
              = ( one_a_ring_ext_a_b @ G ) ) ) ) ) ).

% group.r_inv_ex
thf(fact_213_units__group,axiom,
    group_a_Product_unit @ ( units_1411277569xt_a_b @ r ) ).

% units_group
thf(fact_214_inv__add,axiom,
    ! [A: a,B: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( a_inv_a_b @ r @ ( add_a_b @ r @ A @ B ) )
          = ( a_minus_a_b @ r @ ( a_inv_a_b @ r @ A ) @ B ) ) ) ) ).

% inv_add
thf(fact_215_r__neg2,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( add_a_b @ r @ X @ ( add_a_b @ r @ ( a_inv_a_b @ r @ X ) @ Y ) )
          = Y ) ) ) ).

% r_neg2
thf(fact_216_r__neg1,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( add_a_b @ r @ ( a_inv_a_b @ r @ X ) @ ( add_a_b @ r @ X @ Y ) )
          = Y ) ) ) ).

% r_neg1
thf(fact_217_local_Ominus__add,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( a_inv_a_b @ r @ ( add_a_b @ r @ X @ Y ) )
          = ( add_a_b @ r @ ( a_inv_a_b @ r @ X ) @ ( a_inv_a_b @ r @ Y ) ) ) ) ) ).

% local.minus_add
thf(fact_218_add_Oinv__solve__right_H,axiom,
    ! [A: a,B: a,C: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ C @ ( partia1066395285xt_a_b @ r ) )
         => ( ( ( add_a_b @ r @ B @ ( a_inv_a_b @ r @ C ) )
              = A )
            = ( B
              = ( add_a_b @ r @ A @ C ) ) ) ) ) ) ).

% add.inv_solve_right'
thf(fact_219_add_Oinv__solve__right,axiom,
    ! [A: a,B: a,C: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ C @ ( partia1066395285xt_a_b @ r ) )
         => ( ( A
              = ( add_a_b @ r @ B @ ( a_inv_a_b @ r @ C ) ) )
            = ( B
              = ( add_a_b @ r @ A @ C ) ) ) ) ) ) ).

% add.inv_solve_right
thf(fact_220_add_Oinv__solve__left_H,axiom,
    ! [A: a,B: a,C: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ C @ ( partia1066395285xt_a_b @ r ) )
         => ( ( ( add_a_b @ r @ ( a_inv_a_b @ r @ B ) @ C )
              = A )
            = ( C
              = ( add_a_b @ r @ B @ A ) ) ) ) ) ) ).

% add.inv_solve_left'
thf(fact_221_add_Oinv__solve__left,axiom,
    ! [A: a,B: a,C: a] :
      ( ( member_a @ A @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ B @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ C @ ( partia1066395285xt_a_b @ r ) )
         => ( ( A
              = ( add_a_b @ r @ ( a_inv_a_b @ r @ B ) @ C ) )
            = ( C
              = ( add_a_b @ r @ B @ A ) ) ) ) ) ) ).

% add.inv_solve_left
thf(fact_222_add_Oinv__mult__group,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( a_inv_a_b @ r @ ( add_a_b @ r @ X @ Y ) )
          = ( add_a_b @ r @ ( a_inv_a_b @ r @ Y ) @ ( a_inv_a_b @ r @ X ) ) ) ) ) ).

% add.inv_mult_group
thf(fact_223_a__transpose__inv,axiom,
    ! [X: a,Y: a,Z: a] :
      ( ( ( add_a_b @ r @ X @ Y )
        = Z )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ r ) )
           => ( ( add_a_b @ r @ ( a_inv_a_b @ r @ X ) @ Z )
              = Y ) ) ) ) ) ).

% a_transpose_inv
thf(fact_224_r__minus,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ X @ ( a_inv_a_b @ r @ Y ) )
          = ( a_inv_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ X @ Y ) ) ) ) ) ).

% r_minus
thf(fact_225_l__minus,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( mult_a_ring_ext_a_b @ r @ ( a_inv_a_b @ r @ X ) @ Y )
          = ( a_inv_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ X @ Y ) ) ) ) ) ).

% l_minus
thf(fact_226_add_Onat__pow__inv,axiom,
    ! [X: a,I: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_nat @ r @ I @ ( a_inv_a_b @ r @ X ) )
        = ( a_inv_a_b @ r @ ( add_pow_a_b_nat @ r @ I @ X ) ) ) ) ).

% add.nat_pow_inv
thf(fact_227_add_Oint__pow__inv,axiom,
    ! [X: a,I: int] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_int @ r @ I @ ( a_inv_a_b @ r @ X ) )
        = ( a_inv_a_b @ r @ ( add_pow_a_b_int @ r @ I @ X ) ) ) ) ).

% add.int_pow_inv
thf(fact_228_minus__eq,axiom,
    ! [X: a,Y: a] :
      ( ( a_minus_a_b @ r @ X @ Y )
      = ( add_a_b @ r @ X @ ( a_inv_a_b @ r @ Y ) ) ) ).

% minus_eq
thf(fact_229_sum__zero__eq__neg,axiom,
    ! [X: a,Y: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
       => ( ( ( add_a_b @ r @ X @ Y )
            = ( zero_a_b @ r ) )
         => ( X
            = ( a_inv_a_b @ r @ Y ) ) ) ) ) ).

% sum_zero_eq_neg
thf(fact_230_r__neg,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_a_b @ r @ X @ ( a_inv_a_b @ r @ X ) )
        = ( zero_a_b @ r ) ) ) ).

% r_neg
thf(fact_231_minus__equality,axiom,
    ! [Y: a,X: a] :
      ( ( ( add_a_b @ r @ Y @ X )
        = ( zero_a_b @ r ) )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ r ) )
         => ( ( a_inv_a_b @ r @ X )
            = Y ) ) ) ) ).

% minus_equality
thf(fact_232_l__neg,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_a_b @ r @ ( a_inv_a_b @ r @ X ) @ X )
        = ( zero_a_b @ r ) ) ) ).

% l_neg
thf(fact_233_add_Oint__pow__diff,axiom,
    ! [X: a,N: int,M: int] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_int @ r @ ( minus_minus_int @ N @ M ) @ X )
        = ( add_a_b @ r @ ( add_pow_a_b_int @ r @ N @ X ) @ ( a_inv_a_b @ r @ ( add_pow_a_b_int @ r @ M @ X ) ) ) ) ) ).

% add.int_pow_diff
thf(fact_234_local_Ominus__minus,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( a_inv_a_b @ r @ ( a_inv_a_b @ r @ X ) )
        = X ) ) ).

% local.minus_minus
thf(fact_235_add_Oinv__closed,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( member_a @ ( a_inv_a_b @ r @ X ) @ ( partia1066395285xt_a_b @ r ) ) ) ).

% add.inv_closed
thf(fact_236_local_Ominus__zero,axiom,
    ( ( a_inv_a_b @ r @ ( zero_a_b @ r ) )
    = ( zero_a_b @ r ) ) ).

% local.minus_zero
thf(fact_237_add_Oinv__eq__1__iff,axiom,
    ! [X: a] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( ( a_inv_a_b @ r @ X )
          = ( zero_a_b @ r ) )
        = ( X
          = ( zero_a_b @ r ) ) ) ) ).

% add.inv_eq_1_iff
thf(fact_238_Units__minus__one__closed,axiom,
    member_a @ ( a_inv_a_b @ r @ ( one_a_ring_ext_a_b @ r ) ) @ ( units_a_ring_ext_a_b @ r ) ).

% Units_minus_one_closed
thf(fact_239_units__of__mult,axiom,
    ! [G: partia96731725t_unit] :
      ( ( mult_a_Product_unit @ ( units_873712258t_unit @ G ) )
      = ( mult_a_Product_unit @ G ) ) ).

% units_of_mult
thf(fact_240_units__of__mult,axiom,
    ! [G: partia1833973666xt_a_b] :
      ( ( mult_a_Product_unit @ ( units_1411277569xt_a_b @ G ) )
      = ( mult_a_ring_ext_a_b @ G ) ) ).

% units_of_mult
thf(fact_241_abelian__group_Oa__inv__closed,axiom,
    ! [G: partia1833973666xt_a_b,X: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( member_a @ ( a_inv_a_b @ G @ X ) @ ( partia1066395285xt_a_b @ G ) ) ) ) ).

% abelian_group.a_inv_closed
thf(fact_242_abelian__group_Ominus__minus,axiom,
    ! [G: partia1833973666xt_a_b,X: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( a_inv_a_b @ G @ ( a_inv_a_b @ G @ X ) )
          = X ) ) ) ).

% abelian_group.minus_minus
thf(fact_243_a__minus__def,axiom,
    ( a_minus_a_b
    = ( ^ [R4: partia1833973666xt_a_b,X4: a,Y5: a] : ( add_a_b @ R4 @ X4 @ ( a_inv_a_b @ R4 @ Y5 ) ) ) ) ).

% a_minus_def
thf(fact_244_units__of__one,axiom,
    ! [G: partia96731725t_unit] :
      ( ( one_a_Product_unit @ ( units_873712258t_unit @ G ) )
      = ( one_a_Product_unit @ G ) ) ).

% units_of_one
thf(fact_245_units__of__one,axiom,
    ! [G: partia1833973666xt_a_b] :
      ( ( one_a_Product_unit @ ( units_1411277569xt_a_b @ G ) )
      = ( one_a_ring_ext_a_b @ G ) ) ).

% units_of_one
thf(fact_246_abelian__group_Ominus__add,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( ( a_inv_a_b @ G @ ( add_a_b @ G @ X @ Y ) )
            = ( add_a_b @ G @ ( a_inv_a_b @ G @ X ) @ ( a_inv_a_b @ G @ Y ) ) ) ) ) ) ).

% abelian_group.minus_add
thf(fact_247_abelian__group_Or__neg2,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( ( add_a_b @ G @ X @ ( add_a_b @ G @ ( a_inv_a_b @ G @ X ) @ Y ) )
            = Y ) ) ) ) ).

% abelian_group.r_neg2
thf(fact_248_abelian__group_Or__neg1,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( ( add_a_b @ G @ ( a_inv_a_b @ G @ X ) @ ( add_a_b @ G @ X @ Y ) )
            = Y ) ) ) ) ).

% abelian_group.r_neg1
thf(fact_249_abelian__group_Ominus__eq,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( a_minus_a_b @ G @ X @ Y )
        = ( add_a_b @ G @ X @ ( a_inv_a_b @ G @ Y ) ) ) ) ).

% abelian_group.minus_eq
thf(fact_250_abelian__group_Ol__neg,axiom,
    ! [G: partia1833973666xt_a_b,X: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( add_a_b @ G @ ( a_inv_a_b @ G @ X ) @ X )
          = ( zero_a_b @ G ) ) ) ) ).

% abelian_group.l_neg
thf(fact_251_abelian__group_Or__neg,axiom,
    ! [G: partia1833973666xt_a_b,X: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( add_a_b @ G @ X @ ( a_inv_a_b @ G @ X ) )
          = ( zero_a_b @ G ) ) ) ) ).

% abelian_group.r_neg
thf(fact_252_abelian__group_Ominus__equality,axiom,
    ! [G: partia1833973666xt_a_b,Y: a,X: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( ( add_a_b @ G @ Y @ X )
          = ( zero_a_b @ G ) )
       => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
           => ( ( a_inv_a_b @ G @ X )
              = Y ) ) ) ) ) ).

% abelian_group.minus_equality
thf(fact_253_abelian__group_Oinv__add,axiom,
    ! [G: partia1833973666xt_a_b,A: a,B: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( member_a @ A @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ B @ ( partia1066395285xt_a_b @ G ) )
         => ( ( a_inv_a_b @ G @ ( add_a_b @ G @ A @ B ) )
            = ( a_minus_a_b @ G @ ( a_inv_a_b @ G @ A ) @ B ) ) ) ) ) ).

% abelian_group.inv_add
thf(fact_254_abelian__group_Oa__transpose__inv,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( abelian_group_a_b @ G )
     => ( ( ( add_a_b @ G @ X @ Y )
          = Z )
       => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
           => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ G ) )
             => ( ( add_a_b @ G @ ( a_inv_a_b @ G @ X ) @ Z )
                = Y ) ) ) ) ) ) ).

% abelian_group.a_transpose_inv
thf(fact_255_add_Oint__pow__neg,axiom,
    ! [X: a,I: int] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_int @ r @ ( uminus_uminus_int @ I ) @ X )
        = ( a_inv_a_b @ r @ ( add_pow_a_b_int @ r @ I @ X ) ) ) ) ).

% add.int_pow_neg
thf(fact_256_add__minus__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ A @ ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_257_minus__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( plus_plus_int @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_258_minus__add__distrib,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( uminus_uminus_int @ B ) ) ) ).

% minus_add_distrib
thf(fact_259_minus__diff__eq,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( minus_minus_int @ A @ B ) )
      = ( minus_minus_int @ B @ A ) ) ).

% minus_diff_eq
thf(fact_260_diff__minus__eq__add,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( uminus_uminus_int @ B ) )
      = ( plus_plus_int @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_261_uminus__add__conv__diff,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B )
      = ( minus_minus_int @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_262_group__cancel_Osub2,axiom,
    ! [B5: int,K: int,B: int,A: int] :
      ( ( B5
        = ( plus_plus_int @ K @ B ) )
     => ( ( minus_minus_int @ A @ B5 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_263_diff__conv__add__uminus,axiom,
    ( minus_minus_int
    = ( ^ [A5: int,B4: int] : ( plus_plus_int @ A5 @ ( uminus_uminus_int @ B4 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_264_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_minus_int
    = ( ^ [A5: int,B4: int] : ( plus_plus_int @ A5 @ ( uminus_uminus_int @ B4 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_265_group__cancel_Oneg1,axiom,
    ! [A3: int,K: int,A: int] :
      ( ( A3
        = ( plus_plus_int @ K @ A ) )
     => ( ( uminus_uminus_int @ A3 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( uminus_uminus_int @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_266_add_Oinverse__distrib__swap,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_267_minus__diff__commute,axiom,
    ! [B: int,A: int] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ B ) @ A )
      = ( minus_minus_int @ ( uminus_uminus_int @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_268_add_Oint__pow__neg__int,axiom,
    ! [X: a,N: nat] :
      ( ( member_a @ X @ ( partia1066395285xt_a_b @ r ) )
     => ( ( add_pow_a_b_int @ r @ ( uminus_uminus_int @ ( semiri2019852685at_int @ N ) ) @ X )
        = ( a_inv_a_b @ r @ ( add_pow_a_b_nat @ r @ N @ X ) ) ) ) ).

% add.int_pow_neg_int
thf(fact_269_units__comm__group,axiom,
    comm_g1684316527t_unit @ ( units_1411277569xt_a_b @ r ) ).

% units_comm_group
thf(fact_270_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1382578993at_nat @ M )
        = ( semiri1382578993at_nat @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_271_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri2019852685at_int @ M )
        = ( semiri2019852685at_int @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_272_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1382578993at_nat @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( semiri1382578993at_nat @ M ) @ ( semiri1382578993at_nat @ N ) ) ) ).

% of_nat_add
thf(fact_273_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri2019852685at_int @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_int @ ( semiri2019852685at_int @ M ) @ ( semiri2019852685at_int @ N ) ) ) ).

% of_nat_add
thf(fact_274_comm__groupE_I4_J,axiom,
    ! [G: partia96731725t_unit,X: a,Y: a] :
      ( ( comm_g1684316527t_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ Y @ ( partia1955795460t_unit @ G ) )
         => ( ( mult_a_Product_unit @ G @ X @ Y )
            = ( mult_a_Product_unit @ G @ Y @ X ) ) ) ) ) ).

% comm_groupE(4)
thf(fact_275_comm__groupE_I4_J,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( comm_g791708116xt_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( ( mult_a_ring_ext_a_b @ G @ X @ Y )
            = ( mult_a_ring_ext_a_b @ G @ Y @ X ) ) ) ) ) ).

% comm_groupE(4)
thf(fact_276_comm__groupE_I3_J,axiom,
    ! [G: partia96731725t_unit,X: a,Y: a,Z: a] :
      ( ( comm_g1684316527t_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ Y @ ( partia1955795460t_unit @ G ) )
         => ( ( member_a @ Z @ ( partia1955795460t_unit @ G ) )
           => ( ( mult_a_Product_unit @ G @ ( mult_a_Product_unit @ G @ X @ Y ) @ Z )
              = ( mult_a_Product_unit @ G @ X @ ( mult_a_Product_unit @ G @ Y @ Z ) ) ) ) ) ) ) ).

% comm_groupE(3)
thf(fact_277_comm__groupE_I3_J,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a,Z: a] :
      ( ( comm_g791708116xt_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( ( member_a @ Z @ ( partia1066395285xt_a_b @ G ) )
           => ( ( mult_a_ring_ext_a_b @ G @ ( mult_a_ring_ext_a_b @ G @ X @ Y ) @ Z )
              = ( mult_a_ring_ext_a_b @ G @ X @ ( mult_a_ring_ext_a_b @ G @ Y @ Z ) ) ) ) ) ) ) ).

% comm_groupE(3)
thf(fact_278_comm__groupE_I1_J,axiom,
    ! [G: partia96731725t_unit,X: a,Y: a] :
      ( ( comm_g1684316527t_unit @ G )
     => ( ( member_a @ X @ ( partia1955795460t_unit @ G ) )
       => ( ( member_a @ Y @ ( partia1955795460t_unit @ G ) )
         => ( member_a @ ( mult_a_Product_unit @ G @ X @ Y ) @ ( partia1955795460t_unit @ G ) ) ) ) ) ).

% comm_groupE(1)
thf(fact_279_comm__groupE_I1_J,axiom,
    ! [G: partia1833973666xt_a_b,X: a,Y: a] :
      ( ( comm_g791708116xt_a_b @ G )
     => ( ( member_a @ X @ ( partia1066395285xt_a_b @ G ) )
       => ( ( member_a @ Y @ ( partia1066395285xt_a_b @ G ) )
         => ( member_a @ ( mult_a_ring_ext_a_b @ G @ X @ Y ) @ ( partia1066395285xt_a_b @ G ) ) ) ) ) ).

% comm_groupE(1)
thf(fact_280_comm__groupE_I2_J,axiom,
    ! [G: partia96731725t_unit] :
      ( ( comm_g1684316527t_unit @ G )
     => ( member_a @ ( one_a_Product_unit @ G ) @ ( partia1955795460t_unit @ G ) ) ) ).

% comm_groupE(2)
thf(fact_281_comm__groupE_I2_J,axiom,
    ! [G: partia1833973666xt_a_b] :
      ( ( comm_g791708116xt_a_b @ G )
     => ( member_a @ ( one_a_ring_ext_a_b @ G ) @ ( partia1066395285xt_a_b @ G ) ) ) ).

% comm_groupE(2)

% Conjectures (1)
thf(conj_0,conjecture,
    member449909584od_a_a @ ( product_Pair_a_a @ ( add_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r2 @ r4 ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ r3 @ r4 ) ) ) @ ( mult_a_ring_ext_a_b @ r @ ( mult_a_ring_ext_a_b @ r @ s @ s3 ) @ ( mult_a_ring_ext_a_b @ r @ s2 @ s3 ) ) ) @ ( partia206007992t_unit @ rel ) ).

%------------------------------------------------------------------------------